package com.luobr.backend.constant;

import java.util.Arrays;
import java.util.List;

/**
 * @author: 罗念笙
 * @date: 2025/2/20 15:56
 * 图片全局常量
 */
public interface ImageConstant {

    // 文件大小限制 2M
    long FILE_SIZE_LIMIT = 2 * 1024 * 1024L;

    // 允许上传文件的后缀格式
    List<String> ALLOW_UPLOAD_IMAGE_SUFFIX_FORMAT_LIST = Arrays.asList("jpeg", "jpg", "png", "webp");

    // 图片类型（网页端返回的格式不同于后缀）
    List<String> ALLOW_IMAGE_TYPES_LIST = Arrays.asList("image/jpeg", "image/jpg", "image/png", "image/webp");

    // 允许上传文件URL的前缀格式
    List<String> ALLOW_UPLOAD_URL_PREFIX_FORMAT_LIST = Arrays.asList("http://", "https://");

    // 文件相对路径前缀，例如：test/xxx.png 中的 test
    interface FILE_PATH_PREFIX {
        String PUBLIC = "photoGallery/public";
        String SPACE = "photoGallery/space";
    }

    // 项目名称
    String PROJECT_NAME = "photoGallery";

    // 图片大小分类分析
    interface IMAGE_SIZE_RANGE {
        long SMALL = 100 * 1024L;
        long MEDIUM = 500 * 1024L;
        long LARGE = 1024 * 1024L;
    }
}